package com.gxar.quick.ar.server.base.model.combo.vo.response;

import com.alibaba.fastjson2.annotation.JSONField;
import com.fasterxml.jackson.annotation.JsonProperty;
import com.gxar.quick.ar.server.base.model.combo.vo.ComboConfigInfoVO;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;

import javax.persistence.Column;
import java.math.BigDecimal;
import java.util.List;

/**
 * @author linsy
 * @version 1.0
 * @created 2023/11/8 09:37
 */
@Data
@ApiModel("套餐列表响应")
public class ComboListResponse {

    @ApiModelProperty("套餐id")
    @JSONField(name = "id")
    @JsonProperty("id")
    private String id;

    @ApiModelProperty("套餐名字")
    @JSONField(name = "name")
    @JsonProperty("name")
    private String name;

    @ApiModelProperty("计费方式。0-包年包月，1-按量计费")
    @JSONField(name = "bill_method")
    @JsonProperty("bill_method")
    private Integer billMethod;

    @ApiModelProperty("计费项.0-日期，1-坑位，2-素材大小，3-浏览次数")
    @JSONField(name = "item")
    @JsonProperty("item")
    private Integer item;

    @ApiModelProperty("套餐等级")
    @JSONField(name = "grade")
    @JsonProperty("grade")
    private Integer grade;

    @ApiModelProperty("套餐类型。0-会员套餐")
    @JSONField(name = "type")
    @JsonProperty("type")
    private Integer type;

    @ApiModelProperty("套餐描述信息")
    @JSONField(name = "description")
    @JsonProperty("description")
    private String description;

    @ApiModelProperty("计费项值")
    @JSONField(name = "item_value")
    @JsonProperty("item_value")
    private Integer itemValue;

    @ApiModelProperty("计费项值单位，Month-月，Year-年")
    @JSONField(name = "item_value_unit")
    @JsonProperty("item_value_unit")
    private String itemValueUnit;

    @ApiModelProperty("配置信息")
    @JSONField(name = "config")
    @JsonProperty("config")
    private List<ComboConfigInfoVO> config;

    @ApiModelProperty("币种")
    @JSONField(name = "currency")
    @JsonProperty("currency")
    private String currency;

    @ApiModelProperty("原价")
    @JSONField(name = "ori_price")
    @JsonProperty("ori_price")
    private BigDecimal oriPrice;

    @ApiModelProperty("套餐价格")
    @JSONField(name = "price")
    @JsonProperty("price")
    private BigDecimal price;

    @ApiModelProperty("套餐图标")
    @JSONField(name = "icon")
    @JsonProperty("icon")
    private String icon;

    @ApiModelProperty("套餐背景")
    @JSONField(name = "background")
    @JsonProperty("background")
    private String background;

}
